#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/**
 * n皇后问题
 * 
 * 1.回溯法
 * 
 * 2.位运算优化
 * 
*/
int isValid() {
    return 1;
}

int process(int *p, int ret, int i, int j) {
    p[i] = j;
    return ret;
}

//最大不超过32
int nQueen(int n) {
    if (n < 0 || n > 32) {
        return -1;
    }
    int p[32] = {0};
    return process(p, 0, 0, 0);
}

//a & (~a+1) 提取a最右侧的1  1001010 -> 0000010
